﻿

using ProtoBuf;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace IotContract.Models.Clients.Hks;
/// <summary>
/// 充放电结果
/// </summary>
[ProtoContract]
public class ChargeTrayResult
{
    [ProtoMember(1)]
    public List<ChargeResult> ChargeResultsVos { get; set; }

    [ProtoMember(2)]
    public int GroupNumber { get; set; }
    [ProtoMember(3)]
    public int Stage { get; set; }
    /// <summary>
    /// 充放电400个电芯温度
    /// </summary>
    [ProtoMember(4)]
    public List<string> Temps { get; set; }
}
[ProtoContract]
public class ChargeResult
{
    [ProtoMember(1)]
    public string TrayNo { get; set; }

    [ProtoMember(2)]
    public List<ChargeDetail> ChargeDetails { get; set; }
}
[ProtoContract]
public class ChargeDetail
{
    /// <summary>
    /// 通道
    /// </summary>
    [ProtoMember(1)]
    public int Channel { get; set; }

    /// <summary>
    /// 批次
    /// </summary>
    [ProtoMember(2)]
    public string Lotno { get; set; }



    /// <summary>
    /// 开始容量
    /// </summary>
    [ProtoMember(3)]
    public double CapacityStart { get; set; }
    /// <summary>
    /// 结束容量
    /// </summary>
    [ProtoMember(4)]
    public double CapacityEnd { get; set; }

    /// <summary>
    /// 步次
    /// </summary>
    [ProtoMember(5)]
    public double ChargeStep { get; set; }
    /// <summary>
    /// 1 skip 2 reset
    /// </summary>
    [ProtoMember(6)]
    public double ChargeType { get; set; }
    /// <summary>
    /// 结束电流
    /// </summary>
    [ProtoMember(7)]
    public double CurrentEnd { get; set; }
    /// <summary>
    /// 开始电流
    /// </summary>
    [ProtoMember(8)]
    public double CurrentStart { get; set; }

    /// <summary>
    /// 结束能量
    /// </summary>
    [ProtoMember(9)]
    public double EnergyEnd { get; set; }
    /// <summary>
    /// 开始能量
    /// </summary>
    [ProtoMember(10)]
    public double EnergyStart { get; set; }
    /// <summary>
    /// 开始电压
    /// </summary>

    [ProtoMember(11)]
    public double VoltageStart { get; set; }
    /// <summary>
    /// 结束电压
    /// </summary>
    [ProtoMember(12)]
    public double VoltageEnd { get; set; }
    /// <summary>
    /// 结束线电压
    /// </summary>
    [ProtoMember(13)]
    public double VoltageLineEnd { get; set; }
    /// <summary>
    /// 开始线电压
    /// </summary>
    [ProtoMember(14)]
    public double VoltageLineStart { get; set; }
    [ProtoMember(15)]
    public string NgCode { get; set; }



    ///// <summary>
    ///// 最大温度
    ///// </summary>
    //public double TemperatureMax { get; set; }
    ///// <summary>
    ///// 最小温度
    ///// </summary>
    //public double TemperatureMin { get; set; }
    ///// <summary>
    ///// 平均温度
    ///// </summary>
    //public double TemperatureAvg { get; set; }
    /// <summary>
    /// 开始时间
    /// </summary>
    [ProtoMember(16)]
    public string StartTime { get; set; }
    /// <summary>
    /// 结束时间
    /// </summary>
    [ProtoMember(17)]
    public string EndTime { get; set; }




    /// <summary>
    /// 设备编码
    /// </summary>
    [ProtoMember(18)]
    public string EquipmentCode { get; set; }


    [ProtoMember(19)]
    public string CreateTime { get; set; }

    /// <summary>
    /// 最大温度
    /// </summary>
    [ProtoMember(20)]
    public double TemperatureMax { get; set; }
    /// <summary>
    /// 最小温度
    /// </summary>
    [ProtoMember(21)]
    public double TemperatureMin { get; set; }
    /// <summary>
    /// 平均温度
    /// </summary>
    [ProtoMember(22)]
    public double TemperatureAvg { get; set; }
}
